Challenges in the Evolution of Metamodels: Smells and Anti-Patterns of a Historically-Grown Metamodel
نویسندگان
چکیده
In model-driven engineering, modeling languages are developed to serve as basis for system design, simulation and code generation. Like any software artifact, modeling languages evolve over time. If, however, the metamodel that defines the language is badly designed, the effort needed for its maintenance is unnecessarily increased. In this paper, we present bad smells and anti-patterns that we discovered in a thorough metamodel review of the Palladio Component Model (PCM). The PCM is a good representative for big and old metamodels that have grown over time. Thus, these results are meaningful, as they reflect the types of smells that accumulate in such metamodels over time. Related work deals mainly with automatically detectable bad smells, anti-patterns and defects. However, there are smells and anti-patterns, which cannot be detected automatically. They should not be neglected. Thus, in this paper, we focus on both: automatically and non-automatically detectable smells.
منابع مشابه
Challenges in evolving Metamodels
Like every other software artifact, metamodels are subject to change even in later phases of the software life cycle. In this problem description paper, we first classify metamodel changes. We then elaborate on the challenges of metamodel evolution. The main challenges are the tight coupling of code to metamodels and the pervasiveness of metamodel dependencies. As this is a problem description ...
متن کاملGECO: A Generator Composition Approach for Aspect-Oriented DSLs
Code and model generators that are employed in modeldriven engineering usually face challenges caused by complexity and tight coupling of generator implementations, particularly when multiple metamodels are involved. As a consequence maintenance, evolution and reuse of generators is expensive and error-prone. We address these challenges with a two fold approach for generator composition, called...
متن کاملCOPE: Coupled Evolution of Metamodels and Models for the Eclipse Modeling Framework
In consequence of changing requirements and technological progress, metamodels are subject to change. Manually migrating models to a new version of their corresponding metamodel is costly, tedious and error-prone. The coupled evolution of a metamodel and its models is a sequence of metamodel changes and their corresponding model migrations. These coupled changes are either metamodelspecific or ...
متن کاملA Change Metamodel for the Evolution of MOF-Based Metamodels
The evolution of software systems often produces incompatibilities with existing data and applications. To prevent incompatibilities, changes have to be wellplanned, and developers should know the impact of changes on a software system. This consideration also applies to the field of model-driven development, where changes occur with the modification of the underlying metamodels. Models that ar...
متن کاملCOPE: A Language for the Coupled Evolution of Metamodels and Models
Domain-specific modeling promises to increase productivity by offering modeling languages tailored to a problem domain. Such modeling languages are typically defined by a metamodel. In consequence of changing requirements and technological progress, the problem domains and thus the metamodels are subject to change. Manually migrating models to a new version of their corresponding metamodel is c...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2016